// Copyright 2025 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     https://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
// Code generated by sidekick. DO NOT EDIT.

#[allow(unused_imports)]
use super::*;

impl std::fmt::Debug for super::Challenge {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        let mut debug_struct = f.debug_struct("Challenge");
        debug_struct.field("name", &self.name);
        debug_struct.field("create_time", &self.create_time);
        debug_struct.field("expire_time", &self.expire_time);
        debug_struct.field("used", &self.used);
        debug_struct.field("tpm_nonce", &self.tpm_nonce);
        if !self._unknown_fields.is_empty() {
            debug_struct.field("_unknown_fields", &self._unknown_fields);
        }
        debug_struct.finish()
    }
}

impl std::fmt::Debug for super::CreateChallengeRequest {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        let mut debug_struct = f.debug_struct("CreateChallengeRequest");
        debug_struct.field("parent", &self.parent);
        debug_struct.field("challenge", &self.challenge);
        if !self._unknown_fields.is_empty() {
            debug_struct.field("_unknown_fields", &self._unknown_fields);
        }
        debug_struct.finish()
    }
}

impl std::fmt::Debug for super::VerifyAttestationRequest {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        let mut debug_struct = f.debug_struct("VerifyAttestationRequest");
        debug_struct.field("challenge", &self.challenge);
        debug_struct.field("gcp_credentials", &self.gcp_credentials);
        debug_struct.field("tpm_attestation", &self.tpm_attestation);
        debug_struct.field("confidential_space_info", &self.confidential_space_info);
        debug_struct.field("token_options", &self.token_options);
        debug_struct.field("attester", &self.attester);
        debug_struct.field("tee_attestation", &self.tee_attestation);
        if !self._unknown_fields.is_empty() {
            debug_struct.field("_unknown_fields", &self._unknown_fields);
        }
        debug_struct.finish()
    }
}

impl std::fmt::Debug for super::TdxCcelAttestation {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        let mut debug_struct = f.debug_struct("TdxCcelAttestation");
        debug_struct.field("ccel_acpi_table", &self.ccel_acpi_table);
        debug_struct.field("ccel_data", &self.ccel_data);
        debug_struct.field("canonical_event_log", &self.canonical_event_log);
        debug_struct.field("td_quote", &self.td_quote);
        if !self._unknown_fields.is_empty() {
            debug_struct.field("_unknown_fields", &self._unknown_fields);
        }
        debug_struct.finish()
    }
}

impl std::fmt::Debug for super::SevSnpAttestation {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        let mut debug_struct = f.debug_struct("SevSnpAttestation");
        debug_struct.field("report", &self.report);
        debug_struct.field("aux_blob", &self.aux_blob);
        if !self._unknown_fields.is_empty() {
            debug_struct.field("_unknown_fields", &self._unknown_fields);
        }
        debug_struct.finish()
    }
}

impl std::fmt::Debug for super::VerifyAttestationResponse {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        let mut debug_struct = f.debug_struct("VerifyAttestationResponse");
        debug_struct.field("oidc_claims_token", &self.oidc_claims_token);
        debug_struct.field("partial_errors", &self.partial_errors);
        if !self._unknown_fields.is_empty() {
            debug_struct.field("_unknown_fields", &self._unknown_fields);
        }
        debug_struct.finish()
    }
}

impl std::fmt::Debug for super::GcpCredentials {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        let mut debug_struct = f.debug_struct("GcpCredentials");
        debug_struct.field("service_account_id_tokens", &self.service_account_id_tokens);
        if !self._unknown_fields.is_empty() {
            debug_struct.field("_unknown_fields", &self._unknown_fields);
        }
        debug_struct.finish()
    }
}

impl std::fmt::Debug for super::TokenOptions {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        let mut debug_struct = f.debug_struct("TokenOptions");
        debug_struct.field("audience", &self.audience);
        debug_struct.field("nonce", &self.nonce);
        debug_struct.field("token_type", &self.token_type);
        debug_struct.field("token_type_options", &self.token_type_options);
        if !self._unknown_fields.is_empty() {
            debug_struct.field("_unknown_fields", &self._unknown_fields);
        }
        debug_struct.finish()
    }
}

impl std::fmt::Debug for super::AwsPrincipalTagsOptions {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        let mut debug_struct = f.debug_struct("AwsPrincipalTagsOptions");
        debug_struct.field("allowed_principal_tags", &self.allowed_principal_tags);
        if !self._unknown_fields.is_empty() {
            debug_struct.field("_unknown_fields", &self._unknown_fields);
        }
        debug_struct.finish()
    }
}

impl std::fmt::Debug for super::aws_principal_tags_options::AllowedPrincipalTags {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        let mut debug_struct = f.debug_struct("AllowedPrincipalTags");
        debug_struct.field(
            "container_image_signatures",
            &self.container_image_signatures,
        );
        if !self._unknown_fields.is_empty() {
            debug_struct.field("_unknown_fields", &self._unknown_fields);
        }
        debug_struct.finish()
    }
}

impl std::fmt::Debug
    for super::aws_principal_tags_options::allowed_principal_tags::ContainerImageSignatures
{
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        let mut debug_struct = f.debug_struct("ContainerImageSignatures");
        debug_struct.field("key_ids", &self.key_ids);
        if !self._unknown_fields.is_empty() {
            debug_struct.field("_unknown_fields", &self._unknown_fields);
        }
        debug_struct.finish()
    }
}

impl std::fmt::Debug for super::TpmAttestation {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        let mut debug_struct = f.debug_struct("TpmAttestation");
        debug_struct.field("quotes", &self.quotes);
        debug_struct.field("tcg_event_log", &self.tcg_event_log);
        debug_struct.field("canonical_event_log", &self.canonical_event_log);
        debug_struct.field("ak_cert", &self.ak_cert);
        debug_struct.field("cert_chain", &self.cert_chain);
        if !self._unknown_fields.is_empty() {
            debug_struct.field("_unknown_fields", &self._unknown_fields);
        }
        debug_struct.finish()
    }
}

impl std::fmt::Debug for super::tpm_attestation::Quote {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        let mut debug_struct = f.debug_struct("Quote");
        debug_struct.field("hash_algo", &self.hash_algo);
        debug_struct.field("pcr_values", &self.pcr_values);
        debug_struct.field("raw_quote", &self.raw_quote);
        debug_struct.field("raw_signature", &self.raw_signature);
        if !self._unknown_fields.is_empty() {
            debug_struct.field("_unknown_fields", &self._unknown_fields);
        }
        debug_struct.finish()
    }
}

impl std::fmt::Debug for super::ConfidentialSpaceInfo {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        let mut debug_struct = f.debug_struct("ConfidentialSpaceInfo");
        debug_struct.field("signed_entities", &self.signed_entities);
        if !self._unknown_fields.is_empty() {
            debug_struct.field("_unknown_fields", &self._unknown_fields);
        }
        debug_struct.finish()
    }
}

impl std::fmt::Debug for super::SignedEntity {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        let mut debug_struct = f.debug_struct("SignedEntity");
        debug_struct.field(
            "container_image_signatures",
            &self.container_image_signatures,
        );
        if !self._unknown_fields.is_empty() {
            debug_struct.field("_unknown_fields", &self._unknown_fields);
        }
        debug_struct.finish()
    }
}

impl std::fmt::Debug for super::ContainerImageSignature {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        let mut debug_struct = f.debug_struct("ContainerImageSignature");
        debug_struct.field("payload", &self.payload);
        debug_struct.field("signature", &self.signature);
        debug_struct.field("public_key", &self.public_key);
        debug_struct.field("sig_alg", &self.sig_alg);
        if !self._unknown_fields.is_empty() {
            debug_struct.field("_unknown_fields", &self._unknown_fields);
        }
        debug_struct.finish()
    }
}

impl std::fmt::Debug for super::VerifyConfidentialSpaceRequest {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        let mut debug_struct = f.debug_struct("VerifyConfidentialSpaceRequest");
        debug_struct.field("challenge", &self.challenge);
        debug_struct.field("gcp_credentials", &self.gcp_credentials);
        debug_struct.field("signed_entities", &self.signed_entities);
        debug_struct.field("gce_shielded_identity", &self.gce_shielded_identity);
        debug_struct.field("options", &self.options);
        debug_struct.field("tee_attestation", &self.tee_attestation);
        if !self._unknown_fields.is_empty() {
            debug_struct.field("_unknown_fields", &self._unknown_fields);
        }
        debug_struct.finish()
    }
}

impl std::fmt::Debug for super::verify_confidential_space_request::ConfidentialSpaceOptions {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        let mut debug_struct = f.debug_struct("ConfidentialSpaceOptions");
        debug_struct.field("audience", &self.audience);
        debug_struct.field("token_profile", &self.token_profile);
        debug_struct.field("nonce", &self.nonce);
        debug_struct.field("signature_type", &self.signature_type);
        debug_struct.field("token_profile_options", &self.token_profile_options);
        if !self._unknown_fields.is_empty() {
            debug_struct.field("_unknown_fields", &self._unknown_fields);
        }
        debug_struct.finish()
    }
}

impl std::fmt::Debug for super::GceShieldedIdentity {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        let mut debug_struct = f.debug_struct("GceShieldedIdentity");
        debug_struct.field("ak_cert", &self.ak_cert);
        debug_struct.field("ak_cert_chain", &self.ak_cert_chain);
        if !self._unknown_fields.is_empty() {
            debug_struct.field("_unknown_fields", &self._unknown_fields);
        }
        debug_struct.finish()
    }
}

impl std::fmt::Debug for super::VerifyConfidentialSpaceResponse {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        let mut debug_struct = f.debug_struct("VerifyConfidentialSpaceResponse");
        debug_struct.field("attestation_token", &self.attestation_token);
        debug_struct.field("partial_errors", &self.partial_errors);
        if !self._unknown_fields.is_empty() {
            debug_struct.field("_unknown_fields", &self._unknown_fields);
        }
        debug_struct.finish()
    }
}

impl std::fmt::Debug for super::VerifyConfidentialGkeRequest {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        let mut debug_struct = f.debug_struct("VerifyConfidentialGkeRequest");
        debug_struct.field("challenge", &self.challenge);
        debug_struct.field("tee_attestation", &self.tee_attestation);
        if !self._unknown_fields.is_empty() {
            debug_struct.field("_unknown_fields", &self._unknown_fields);
        }
        debug_struct.finish()
    }
}

impl std::fmt::Debug for super::VerifyConfidentialGkeResponse {
    fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
        let mut debug_struct = f.debug_struct("VerifyConfidentialGkeResponse");
        debug_struct.field("attestation_token", &self.attestation_token);
        if !self._unknown_fields.is_empty() {
            debug_struct.field("_unknown_fields", &self._unknown_fields);
        }
        debug_struct.finish()
    }
}
